package org.shoukaiseki.inittable.domain;

import com.alibaba.fastjson2.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.ibatis.type.Alias;

import java.util.Date;

/**
 *
 **/
@Alias("SksInitTableVersion")
public class SksInitTableVersion {


    private String name;

    private String  beanSource;

    private String comment;

    private String description;

    private String remark;

    private Integer currentVersion;

    private Integer javaVersion;

    private String primaryKey;

    private String defaultCharset;

    private String engine;

    private String autoIncrement;

    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 类型:0:table;1:视图(暂不支持)  */
    private Integer type;

     /** 执行的sql  */
    private String executeSql;

    /** 索引  */
    private String indexJson;

    /** 触发器  */
    private String triggerJson;

    /** 限制  */
    private String constraintJson;

    /** 执行的索引sql  */
    private String executeIndexSql;

    /** 执行的触发器sql  */
    private String executeTriggerSql;

    /** 语句md5值,用于后期判断是否存在需要更新  */
    private String lastMd5;

    private String currentMd5;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getBeanSource() {
        return beanSource;
    }

    public void setBeanSource(String beanSource) {
        this.beanSource = beanSource;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getCurrentVersion() {
        return currentVersion;
    }

    public void setCurrentVersion(Integer currentVersion) {
        this.currentVersion = currentVersion;
    }

    public Integer getJavaVersion() {
        return javaVersion;
    }

    public void setJavaVersion(Integer javaVersion) {
        this.javaVersion = javaVersion;
    }

    public String getPrimaryKey() {
        return primaryKey;
    }

    public void setPrimaryKey(String primaryKey) {
        this.primaryKey = primaryKey;
    }

    public String getDefaultCharset() {
        return defaultCharset;
    }

    public void setDefaultCharset(String defaultCharset) {
        this.defaultCharset = defaultCharset;
    }

    public String getEngine() {
        return engine;
    }

    public void setEngine(String engine) {
        this.engine = engine;
    }

    public String getAutoIncrement() {
        return autoIncrement;
    }

    public void setAutoIncrement(String autoIncrement) {
        this.autoIncrement = autoIncrement;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getExecuteSql() {
        return executeSql;
    }

    public void setExecuteSql(String executeSql) {
        this.executeSql = executeSql;
    }

    public String getIndexJson() {
        return indexJson;
    }

    public void setIndexJson(String indexJson) {
        this.indexJson = indexJson;
    }

    public String getTriggerJson() {
        return triggerJson;
    }

    public void setTriggerJson(String triggerJson) {
        this.triggerJson = triggerJson;
    }

    public String getConstraintJson() {
        return constraintJson;
    }

    public void setConstraintJson(String constraintJson) {
        this.constraintJson = constraintJson;
    }

    public String getExecuteIndexSql() {
        return executeIndexSql;
    }

    public void setExecuteIndexSql(String executeIndexSql) {
        this.executeIndexSql = executeIndexSql;
    }

    public String getExecuteTriggerSql() {
        return executeTriggerSql;
    }

    public void setExecuteTriggerSql(String executeTriggerSql) {
        this.executeTriggerSql = executeTriggerSql;
    }

    public String getLastMd5() {
        return lastMd5;
    }

    public void setLastMd5(String lastMd5) {
        this.lastMd5 = lastMd5;
    }

    public String getCurrentMd5() {
        return currentMd5;
    }

    public void setCurrentMd5(String currentMd5) {
        this.currentMd5 = currentMd5;
    }
}
